Platform Explorer / Nuxeo Platform 2023.22

Component org.nuxeo.ecm.core.automation.features.operations

Documentation

Requirements

Aliases

  • org.nuxeo.ecm.core.automation.featuresContrib

Resolution Order

62
The resolution order represents the order in which this component has been resolved by the Nuxeo Runtime framework.
You can influence this order by adding "require" tags in your component declaration, to make sure it is resolved after another component.

Contributions

XML Source

<?xml version="1.0"?>
<component name="org.nuxeo.ecm.core.automation.features.operations" version="1.0">

  <alias>org.nuxeo.ecm.core.automation.featuresContrib</alias>
  <require>org.nuxeo.ecm.core.automation.coreContrib</require>

  <documentation>@author Bogdan Stefanescu (bs@nuxeo.com)</documentation>

  <extension target="org.nuxeo.ecm.core.operation.OperationServiceComponent"
    point="operations">

    <operation class="org.nuxeo.ecm.automation.core.operations.services.query.DocumentPaginatedQuery">
      <widgets>
        <widget name="query" type="codearea">
          <labels>
            <label mode="any">Query</label>
          </labels>
          <properties mode="any">
            <property name="language">nxql</property>
            <property name="width">100%</property>
            <property name="height">100%</property>
          </properties>
          <fields>
            <field>query</field>
          </fields>
        </widget>
      </widgets>
    </operation>
    <operation class="org.nuxeo.ecm.automation.core.operations.services.query.ResultSetPaginatedQuery">
      <widgets>
        <widget name="query" type="codearea">
          <labels>
            <label mode="any">ResultSet Query</label>
          </labels>
          <properties mode="any">
            <property name="language">nxql</property>
            <property name="width">100%</property>
            <property name="height">100%</property>
          </properties>
          <fields>
            <field>query</field>
          </fields>
        </widget>
      </widgets>
    </operation>
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.AuditLog" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.AuditQuery" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.AuditPageProviderOperation" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.AuditRestore" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.CreateRelation" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.GetRelations" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.DeleteRelation" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.DocumentPageProviderOperation" >
      <widgets>
        <widget name="query" type="codearea">
            <labels>
              <label mode="any">NXQL query</label>
            </labels>
            <properties mode="any">
              <property name="language">nxql</property>
              <property name="width">100%</property>
              <property name="height">100%</property>
            </properties>
             <fields>
              <field>query</field>
            </fields>
        </widget>
      </widgets>
    </operation>
    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.ResultSetPageProviderOperation" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.users.GetDocumentPrincipalEmails" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.users.GetDocumentUsersAndGroups" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.users.QueryUsers" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateUser" />
    <operation
      class="org.nuxeo.ecm.automation.core.operations.users.CreateOrUpdateGroup" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.notification.SendMail" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.FileManagerImport" />

    <operation  class="org.nuxeo.ecm.automation.core.operations.services.FileManagerImportWithProperties" />

    <operation  class="org.nuxeo.ecm.automation.core.operations.services.FileManagerCreateFolder" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.BlobHolderAttach" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.GetActions" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.management.GetCounters" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.GetDirectoryEntries" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.UserInvite" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.UserWorkspace" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.RunOperationOnProvider" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.CreateDirectoryEntries" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.CreateVocabularyEntry" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.DeleteDirectoryEntries" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.UpdateDirectoryEntries" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.ReadDirectoryEntries" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.DirectoryProjection" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.LoadFromCSV" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.users.GetNuxeoPrincipal" />

  	<operation
      class="org.nuxeo.ecm.automation.core.operations.users.SuggestUserEntries" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.directory.SuggestDirectoryEntries" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.bulk.BulkRunAction" />

    <operation
      class="org.nuxeo.ecm.automation.core.operations.services.bulk.BulkWaitForAction" />

    <operation class="org.nuxeo.ecm.automation.core.operations.collections.SuggestCollectionEntry" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.CreateCollectionOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.AddToCollectionOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.RemoveFromCollectionOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.RemoveFromFavoritesOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.AddToFavoritesOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.GetCollectionsOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromCollectionOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.GetDocumentsFromFavoritesOperation" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.FetchFavorites" />
    <operation class="org.nuxeo.ecm.automation.core.operations.collections.MoveCollectionMemberOperation" />

    <operation class="org.nuxeo.ecm.automation.core.operations.services.workmanager.WorkManagerRunWorkInFailure" />

    <operation class="org.nuxeo.ecm.automation.core.operations.services.MetricsStart" />
    <operation class="org.nuxeo.ecm.automation.core.operations.services.MetricsStop" />

  </extension>

  <extension point="chains"
    target="org.nuxeo.ecm.core.operation.OperationServiceComponent">
    <chain id="VersionAndAttachFile">
      <operation id="Context.PushBlobList">
      </operation>
      <operation id ="Repository.GetDocument">
        <param type="string" name="value">expr:Context.get("currentDocument")</param>
      </operation>
      <operation id="Document.CheckIn">
        <param type="string" name="version">minor</param>
        <param type="string" name="comment">Automatic checkin before file update</param>
      </operation>
      <operation id="Context.SetInputAsVar">
        <param type="string" name="name">newDocument</param>
      </operation>
      <operation id="Context.SetVar">
        <param type="string" name="name">currentDocument</param>
        <param type="string" name="value">expr:Context.get("newDocument").id</param>
      </operation>
      <operation id="Context.PopBlobList">
      </operation>
      <operation id="BlobHolder.AttachOnCurrentDocument">
        <param type="boolean" name="useMainBlob">true</param>
      </operation>
    </chain>
    <chain id="AttachFiles">
      <operation id="BlobHolder.AttachOnCurrentDocument">
        <param type="boolean" name="useMainBlob">false</param>
      </operation>
    </chain>
    <chain id="VersionAndAttachFiles">
      <operation id="Context.PushBlobList">
      </operation>
      <operation id ="Repository.GetDocument">
        <param type="string" name="value">expr:Context.get("currentDocument")</param>
      </operation>
      <operation id="Document.CheckIn">
        <param type="string" name="version">minor</param>
        <param type="string" name="comment">Automatic checkin before files update</param>
      </operation>
      <operation id="Context.SetInputAsVar">
        <param type="string" name="name">newDocument</param>
      </operation>
      <operation id="Context.SetVar">
        <param type="string" name="name">currentDocument</param>
        <param type="string" name="value">expr:Context.get("newDocument").id</param>
      </operation>
      <operation id="Context.PopBlobList">
      </operation>
      <operation id="BlobHolder.AttachOnCurrentDocument">
        <param type="boolean" name="useMainBlob">false</param>
      </operation>
    </chain>
    <chain id="FileManager.ImportWithMetaData">
      <operation id="FileManager.ImportWithProperties">
        <param type="boolean" name="overwrite">true</param>
        <param type="properties" name="properties">expr:Context.get("docMetaData")</param>
      </operation>
    </chain>
  </extension>

  <extension target="org.nuxeo.runtime.ConfigurationService" point="configuration">
    <property name="org.nuxeo.ignore.empty.searchterm">true</property>
  </extension>

</component>